<?php
/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

//Paquete de Usuario
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/usuarios/Usuario.php';
//require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/usuarios/Mensaje.php';
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/usuarios/Evento.php';
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/usuarios/Contacto.php';

//Paquete del Artista
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/artista/PerfilArtista.php';

//Paquete del Empresario
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/empresario/PerfilEmpresario.php';

//Paquete de la Galeria
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/galeria/Producto.php';
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/galeria/Foto.php';
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/galeria/Video.php';
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/galeria/Musica.php';
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/galeria/Comentario.php';

//Paquete del Chat
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/chat/Chat.php';

//Paquete del Mapa
@require_once $_SERVER[DOCUMENT_ROOT].'/clientes/src/classes/modelo/mapa/Mapa.php';

/**
 * Valida si el usuario, dado el email y la contraseña es válido
 * @param <type> $email
 * @param <type> $contrasenia
 * @return <type> El id de usuario del usuario a validar, 0 en caso de no encontrar el usuario, -1 en caso de que no corresponda la contraseña ingresada
 */
function validar_usuario($email, $contrasenia)
{
    $lista = Usuario::search_by_email($email);
    $respuesta = 0;
    foreach($lista as $i =>$value)
    {
        if($lista[$i]->get_contrasenia() == $contrasenia)
        {
            $respuesta = $lista[$i]->get_id();
        }
        else
        {
            $respuesta = -1;
        }
    }
    return $respuesta;
}

/**
 * Valida si el usuario existe
 * @param <type> $email
 * @return <type> true en caso de que el usuario exista, false en caso contrario
 */
function existe_usuario($email){
    $lista = Usuario::search_by_email($email);
    foreach($lista as $i =>$value){
        return true;
    }
    return false;
}

/**
 * Retorna el id de artista dado el id de usuario
 * @param <type> $id_usuario
 * @return <type> el id de artista, 0 en caso de no ser un artista
 */
function dar_tipo_usuario($id_usuario){
    $usuario = new Usuario($id_usuario);
    $usuario->update_from_database_by_id();
    return $usuario->get_tipo();
}

/**
 * Retorna el tamaño del arreglo que llega el parámetro
 * @param <type> $array Arreglo a 
 * @return <type> el id de empresario, 0 en caso de no ser empresario
 */
function tamanio_arreglo($array){
    $respuesta = 0;
    foreach($array as $i =>$value){
        $respuesta++;
    }
    return $respuesta;
}

/**
 * Retorna si dos contactos son amigos
 * @param <type> $id_usuario_1 Id usuario 1
 * @param <type> $id_usuario_2 Id usuario 2
 * @return <type> true en caso de ser contactos, false en caso contrario
 */
function es_contacto($id_usuario_1,$id_usuario_2){
    $relaciones = Contacto::search_by_id_contacto($id_usuario_1, $id_usuario_2);
    $cant_relaciones = tamanio_arreglo($relaciones);
    return $cant_relaciones>0;
}

/**
 * Retorna si dos contactos son amigos
 * @param <type> $id_usuario_1 Id usuario 1
 * @param <type> $id_usuario_2 Id usuario 2
 * @return <type> true en caso de ser contactos, false en caso contrario
 */
function contactar($id_usuario_1,$id_usuario_2){
    $contacto = new Contacto(0,$id_usuario_1,$id_usuario_2);
    $contacto->update_database();
}
?>
